#include<iostream>
#include<list>
using namespace std;

class Point
{
public:
	int x,y;
	Point(int X, int Y){x=X;y=Y;}
};

class Block
{
	int size;
public:
	list<Point> Vertex;
	Block(int LeftTopX, int LeftTopY, int Size)
	{
		size = Size;
		Vertex.push_back(Point(LeftTopX,LeftTopY));
		Vertex.push_back(Point(LeftTopX+Size,LeftTopY));
		Vertex.push_back(Point(LeftTopX+Size,LeftTopY-Size));
		Vertex.push_back(Point(LeftTopX,LeftTopY-Size));
	}
};

class World
{
public:
	Block* Blocks[3];
	int Size[3];
	World()
	{
		Blocks[0] = new Block(100,100,200);
		Blocks[1] = new Block(300,300,150);
		Blocks[2] = new Block(300,500,100);
	}

	void Relocate(int BlockNumber, Point Pos)
	{
		if(BlockNumber > 2)
			return;
		Blocks[BlockNumber] = new Block(Pos.x,Pos.y,Size[BlockNumber]);
	}

	~World()
	{
		for(int i=0 ; i<3 ; i++)
		delete Blocks[i];
	}
};

int main()
{
	World w1;
	w1.Relocate(0,Point(150,150));
	return 0;
}